package main;

import searchXML.CriptosumaXMLParser;
import es.deusto.ingenieria.is.csp.algorithms.BackTracking;
import formulation.CriptosumaProblem;

public class MainProgram
{

	/**
	 * @param args
	 */
	public static void main(String[] args)
	{
		CriptosumaXMLParser parser = new CriptosumaXMLParser("data/additionpuzzle1.xml");
		
		CriptosumaProblem problem = new CriptosumaProblem(parser.getVariables(), parser.getOperation());
		
		if ((parser.getResult().length() == parser.getOperandMaxLength()) || (parser.getResult().length() == parser.getOperandMaxLength() + 1))
		{
			BackTracking<Integer> backTracking = new BackTracking<Integer>();			
			problem.solve(backTracking);
		}
		else
		{
			System.out.println("La palabra que representa el resultado debe tener la misma longitud que el operando de mayor longitud, o como mucho una letra mas");
		}
			
	}

}
